Database Connection:(db.php)

<?php
$host = "localhost";
$user = "root";
$pass = "";
$db   = "sports_club_db";

$conn = new mysqli($host, $user, $pass, $db);

if ($conn->connect_error) {
  die("Connection failed.");
}
?>

Home Page: (index.php)

<h1>Sports Club Website</h1>
<ul>
  <li><a href="athletes.php">View Athletes</a></li>
  <li><a href="search.php">Search Athletes</a></li>
  <li><a href="admin/login.php">Admin Login</a></li>
</ul>

Dynamic athlete list (athletes.php)

<?php
require "db.php";
$result = $conn->query("SELECT * FROM athletes ORDER BY athlete_id DESC");
?>
<h2>All Athletes</h2>
<table border="1" cellpadding="6">
<tr><th>ID</th><th>Name</th><th>Age</th><th>Sport</th></tr>
<?php while($row = $result->fetch_assoc()): ?>
<tr>
  <td><?= $row['athlete_id'] ?></td>
  <td><?= htmlspecialchars($row['name']) ?></td>
  <td><?= $row['age'] ?></td>
  <td><?= htmlspecialchars($row['sport']) ?></td>
</tr>
<?php endwhile; ?>
</table>
<a href="index.php">Back</a>

Search/filter (prepared statement) (search.php):

<?php
require "db.php";
$sport = $_GET['sport'] ?? "";
?>
<h2>Search Athletes by Sport</h2>

<form method="get">
  <input name="sport" value="<?= htmlspecialchars($sport) ?>" placeholder="Football">
  <button type="submit">Search</button>
</form>

<?php
if ($sport != "") {
  $stmt = $conn->prepare("SELECT * FROM athletes WHERE sport LIKE ?");
  $search = "%".$sport."%";
  $stmt->bind_param("s", $search);
  $stmt->execute();
  $result = $stmt->get_result();

  echo "<h3>Results</h3>";
  while ($row = $result->fetch_assoc()) {
    echo "<p>".htmlspecialchars($row['name'])." - ".htmlspecialchars($row['sport'])."</p>";
  }
}
?>
<a href="index.php">Back</a>


Login page (admin/login.php):
<?php
session_start();
require "../db.php";
$msg = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $username = $_POST["username"];
  $password = $_POST["password"];

  $stmt = $conn->prepare("SELECT * FROM users WHERE username = ?");
  $stmt->bind_param("s", $username);
  $stmt->execute();
  $result = $stmt->get_result();
  $user = $result->fetch_assoc();

  if ($user && password_verify($password, $user["password_hash"])) {
    $_SESSION["admin"] = true;
    header("Location: add_athlete.php");
    exit;
  } else {
    $msg = "Invalid login";
  }
}
?>

<h2>Admin Login</h2>
<form method="post">
  <input name="username" placeholder="admin" required>
  <input name="password" type="password" placeholder="Admin123!" required>
  <button type="submit">Login</button>
</form>
<p style="color:red;"><?= $msg ?></p>
<a href="../index.php">Back</a>

Add athlete (admin/add_athlete.php):
<?php
session_start();
if (!isset($_SESSION["admin"])) {
  header("Location: login.php"); exit;
}
require "../db.php";

$msg = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = trim($_POST["name"]);
  $age  = (int)$_POST["age"];
  $sport = trim($_POST["sport"]);

  if ($name == "" || $sport == "" || $age < 10 || $age > 80) {
    $msg = "Validation failed";
  } else {
    $stmt = $conn->prepare("INSERT INTO athletes(name, age, sport) VALUES (?, ?, ?)");
    $stmt->bind_param("sis", $name, $age, $sport);
    $stmt->execute();
    $msg = "Athlete added successfully";
  }
}
?>

<h2>Add Athlete</h2>
<form method="post">
  <input name="name" placeholder="Name" required>
  <input name="age" type="number" placeholder="Age" required>
  <input name="sport" placeholder="Sport" required>
  <button type="submit">Add</button>
</form>
<p style="color:green;"><?= htmlspecialchars($msg) ?></p>

<p><a href="delete_athlete.php">Delete Athlete</a></p>
<p><a href="logout.php">Logout</a></p>
<p><a href="../athletes.php">View Athletes</a></p>

Delete athlete (admin/delete_athlete.php):

<?php
session_start();
if (!isset($_SESSION["admin"])) {
  header("Location: login.php"); exit;
}
require "../db.php";

if (isset($_GET["id"])) {
  $id = (int)$_GET["id"];
  $stmt = $conn->prepare("DELETE FROM athletes WHERE athlete_id = ?");
  $stmt->bind_param("i", $id);
  $stmt->execute();
  header("Location: delete_athlete.php");
  exit;
}

$result = $conn->query("SELECT * FROM athletes ORDER BY athlete_id DESC");
?>

<h2>Delete Athlete</h2>
<ul>
<?php while($row = $result->fetch_assoc()): ?>
  <li>
    <?= htmlspecialchars($row['name']) ?> (<?= htmlspecialchars($row['sport']) ?>)
    - <a href="?id=<?= $row['athlete_id'] ?>">Delete</a>
  </li>
<?php endwhile; ?>
</ul>
<a href="add_athlete.php">Back</a>

Logout (admin/logout.php):
<?php
session_start();
session_destroy();
header("Location: login.php");




